<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
  <meta charset="utf-8" />
  <title>opencpn:opencpn_user_manual:advanced_features:route_to_autopilot</title>
<meta name="generator" content="DokuWiki"/>
<meta name="robots" content="index,follow"/>
<meta name="keywords" content="opencpn,opencpn_user_manual,advanced_features,route_to_autopilot"/>
<link rel="search" type="application/opensearchdescription+xml" href="../lib/exe/opensearch.html" title="OpenCPN Manuals"/>
<link rel="start" href="route_to_autopilot.html"/>
<link rel="contents" href="route_to_autopilot.html" title="Sitemap"/>
<link rel="alternate" type="application/rss+xml" title="Recent Changes" />
<link rel="alternate" type="application/rss+xml" title="Current namespace" />
<link rel="alternate" type="text/html" title="Plain HTML" href="route_to_autopilot.html"/>
<link rel="alternate" type="text/plain" title="Wiki Markup" href="route_to_autopilot.html"/>
<link rel="canonical" href="http://localhost/dokuwiki/doku.php?id=opencpn:opencpn_user_manual:advanced_features:route_to_autopilot"/>
<link rel="stylesheet" type="text/css" href="../lib/exe/css.php.t.bootstrap3.css"/>
<!--[if gte IE 9]><!-->
<script type="text/javascript">/*<![CDATA[*/var NS='opencpn:opencpn_user_manual:advanced_features';var JSINFO = {"id":"opencpn:opencpn_user_manual:advanced_features:route_to_autopilot","namespace":"opencpn:opencpn_user_manual:advanced_features","confirm_delete":"Are you sure you want to delete this page?","doku_base":"\/dokuwiki\/","cg_rev":"","dw_version":49.5,"chrome_version":0,"hide_captcha_error":"none","ckg_dbl_click":"","ckg_canonical":0,"has_wrap":"Wrap","wrapDiv":"WRAP","wrapSpan":"wrap","ckgEdPaste":"off","rel_links":0,"isadmin":0,"isauth":0,"move_renameokay":false,"schemes":["http","https","telnet","gopher","wais","ftp","ed2k","irc","ldap"],"htmlok":0};
/*!]]>*/</script>
<script type="text/javascript" charset="utf-8" src="../lib/exe/jquery.php.t.bootstrap3.js"></script>
<script type="text/javascript" charset="utf-8" src="../lib/exe/js.php.t.bootstrap3.js"></script>
<!--<![endif]-->

    <script type="text/javascript">
    //<![CDATA[ 
    function LoadScript( url )
    {
     document.write( '<scr' + 'ipt type="text/javascript" src="..//url"><\/scr' + 'ipt>' ) ;        

    }
   function LoadScriptDefer( url )
    {
     document.write( '<scr' + 'ipt type="text/javascript" src="..//url" defer><\/scr' + 'ipt>' ) ;        

    }
//]]> 

 </script>
</head>
<body>
<div class="dokuwiki export">



<h1 class="sectionedit1" id="route_to_autopilot">Route to Autopilot</h1>
<div class="level1">

</div>
<!-- EDIT1 SECTION "Route to Autopilot" [19-52] -->
<h3 class="sectionedit2" id="send_a_route_to_the_autopilot_the_basics">Send a Route to the Autopilot, the basics</h3>
<div class="level3">

<p>
If an autopilot is connected to an output port, as defined in the Options→Connections tab, and a route is active, OpenCPN sends NMEA RMB, RMC, and APB sentences to the A/P.
</p>

<p>
Read more in Options &gt; Connections  
<em><a href="../options_setting/connections.html#sending_an_active_route_to_an_autopilot" class="wikilink1" title="opencpn:opencpn_user_manual:options_setting:connections">Sending an Active Route to an Autopilot</a></em><br/>

in <em>Options &gt; Data Connections</em> (at the bottom) for more information about connections and testing. 
</p>

<p>
Note that a <em><strong>Connections Output Port</strong></em> must be configured to send  ECRMB, ECRMC and ECAPB NMEA sentences to the Auto Pilot. 
</p>

<p>
Also read about the <em><a href="../toolbar_buttons/create_route.html#activating_routes_and_active_route_console" class="wikilink1" title="opencpn:opencpn_user_manual:toolbar_buttons:create_route">Activate Route &amp; Active Route Console</a></em>  and  <em><a href="../toolbar_buttons/create_route.html#active_route_console_window" class="wikilink1" title="opencpn:opencpn_user_manual:toolbar_buttons:create_route">Active Route Console Window - Showing Active Leg Data</a></em>
in  <em>Marks and Routes</em> towards the bottom.
</p>

<p>
It is essential to have turned on an <strong><em>Active Route</em></strong> in order to send waypoints to the Autopilot.<br/>

</p>

</div>

<h5 id="waypoint_advance">Waypoint Advance</h5>
<div class="level5">

<p>
OpenCPN automatically shifts to the next waypoint in the route using an arrival radius of 0.05 miles (= 92.6 m) by default. This value can be changed in <em>Options→Ships→Own Ship</em>. The arrival radius can be adjusted in each waypoint properties dialog as well.<br/>

</p>

<p>
This works fine in the general case. The A/P is watching the NMEA stream. It sees a new destination lat/lon, and new heading to steer, and then asks the user for confirmation to make the turn. Raytheon/Autohelm works this way.
</p>

</div>

<h4 id="simulation_testing_-_short_description">Simulation &amp; Testing - Short description</h4>
<div class="level4">

<p>
To create outgoing ECxxx messages make a (left click menu) “<strong>Navigate to here</strong>” to a arbitrary point. You may need to filter outgoing sentences on the network connection to only send “EC” (and filter out the same on the incoming side to avoid feedback) so you don&#039;t receive them and then send duplicates.  The information is scattered so use your browser to search for “autopilot”.<br/>

</p>

</div>
<!-- EDIT2 SECTION "Send a Route to the Autopilot, the basics" [53-2122] -->
<h3 class="sectionedit3" id="autopilots_and_routes_the_details">Autopilots and Routes, the details.</h3>
<div class="level3">

<p>
Please read  
<em><a href="../options_setting/ships.html#advance_route_waypoint_on_arrival_only" class="wikilink1" title="opencpn:opencpn_user_manual:options_setting:ships">Advance route waypoint on arrival only</a></em> first. Here is a detailed discussion of Options→Ships→OwnShip→<strong>Advance route waypoint on arrival only.</strong>
With an <strong>Active Route</strong>, in the <strong>Active Route Console</strong> “This Leg” is visible near the upper right corner of the screen in the console:
</p>

<p>
<img src="../opencpn/manual/4rng.jpg" class="media" alt="" /></a>
</p>

<p>
<strong>RNG</strong> (actual range)  Distance to the next waypoint.<br/>

<strong>NR</strong> (normal range)   Distance from destination waypoint to a line orthagonal to or at right angles to the current route segment which passes through ownship. When shown, NR is after RNG.<br/>

</p>

<p>
<img src="../opencpn/manual/diagram-0-sm.tok.8bfd20_w.500.jpg" class="media" alt="" width="500" /></a><br/>

</p>

<p>
There are two general conditions:<br/>

1. <strong>RNG=NR</strong> On course with no cross track error (XTE=0)<br/>

2.<strong> RNG&gt;NR</strong> Off course (sailing perhaps) with cross track error (XTE&gt;0)<br/>

When the difference is greater than 10% both values are shown in “RNG”<br/>

</p>

<p>
<img src="../opencpn/manual/4rng.jpg" class="media" alt="" /></a>
</p>

<p>
<em>The “normal” range is the second number shown. 1.88 in this case.</em> <br/>

<br/>

<strong>The four diagrams below represent four different conditions:</strong> <br/>

1. <strong>RNG = NR</strong> and XTE=0 (Boat is on the route)<br/>

2. <strong>RNG &gt; NR</strong> and  XTE&gt;0 (Boat is off the route), which corresponds with the dialog shows both RNG and NR  (When there is a 10% difference between NR and RNG).<br/>

Additionally Waypoint Advance (Default and Option) Alternatives:<br/>

3. <strong>Waypoint Advance</strong> (Normal default).<br/>

4. <strong>Advance Waypoint upon Arrival only</strong>. (Option checked)<br/>

<br/>

<strong>Waypoint Advance </strong> (Normal default)<br/>

When following a Route OpenCPN normally decides to advance to the next waypoint if <strong><em>at least one</em></strong> of the following two conditions apply.
</p>
<ol>
<li class="level1"><div class="li"> <strong>NR</strong>  (normal range) is less than the declared arrival radius.  <em><strong>OR</strong> </em></div>
</li>
<li class="level1"><div class="li"> <strong>RNG </strong> (actual range) is increasing for 2 seconds. Ownship is moving away from the target waypoint, and has been for more than two seconds.</div>
</li>
</ol>

<p>
Waypoint Advance (Normal default) when Range (RNG) = Normal Range (NR) and XTE=0 or near 0 <br/>

</p>

<p>
<img src="../opencpn/manual/diagram-1-sm.tok.3c54d9_w.500.jpg" class="media" alt="" width="500" />
</p>

<p>
Waypoint Advance (Normal default) when Range (RNG) is 10% &gt; Normal Range (NR) and XTE &gt;0
</p>

<p>
<img src="../opencpn/manual/diagram-2-sm.tok.c2caac_w.500.jpg" class="media" alt="" width="500" />
</p>

<p>
<strong>Option:  </strong>Check <strong>Advance route waypoint on arrival only</strong>. With this activated., OpenCPN <strong>only</strong>  advances the route to the next waypoint, if condition <strong>1</strong>  above is true (NR&lt;Arrival Radius). Condition <strong>2</strong>  is ignored. <br/>
 <br/>
Advance route waypoint on Arrival only (is checked) when Range (RNG) = Normal Range (NR) and XTE=0 or close <br/>

</p>

<p>
<img src="../opencpn/manual/diagram-3-sm.tok.efc822_w.500.jpg" class="media" alt="" width="500" />
</p>

<p>
Advance route waypoint on Arrival only (is checked) when Range (RNG) is 10% &gt; Normal Range (NR) and XTE&gt;0 <br/>
[Editor&#039;s Note: Diagram needs correction. Boat B location Normal Range should be shown at the arrival radus with boat staring turn.] <br/>

</p>

<p>
<img src="../opencpn/manual/diagram-4-sm.tok.eee4d6_w.500.jpg" class="media" alt="" width="500" />
</p>

<p>
<strong>Advance Waypoint upon arrival only </strong>  (option)  is useful when sailing and you can&#039;t lay the next mark and are forced to tack to reach it. It allows a ship to move away from waypoint without automatically advancing to next waypoint.   <br/>
Note: Waypoint Advance (normal default) is dependent on NR &lt; Arrival Radius OR  RNG increasing more than 2 seconds, so what this option does is overide that second condition. <br/>
 <br/>
<strong>Advance Waypoint upon arrival only</strong>  (option) ensures that the <del>next</del>  current waypoint remains active <br/>
1. NR&lt;Arrival Radius is reached <strong>OR</strong> <br/>
2. A line just inside of the Arrival Radius which is also “normal” or perpendicular to the marked route is reached. In this case there is a cross track error. <br/>
 <br/>
<strong>On the other hand….</strong> <br/>
<strong>Waypoint Advance </strong> (normal defualt) helps you if you really want to cut a corner by a large distance, in such a way that the “normal range” will never be less than  (Arrival radius). The second condition, RNG increases for &gt; 2 seconds, willl automatically advance the route to the next waypoint in this case.
</p>

</div>
<!-- EDIT3 SECTION "Autopilots and Routes, the details." [2123-] -->
<!-- no cachefile used, but created /var/www/html/dokuwiki/data/cache/a/af9a050e0699f2a24d95d60c2a40fae1.xhtml -->
</div>
</body>
</html>
